package com.xd.core.business.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.github.pagehelper.Page;
import com.xd.core.business.dto.*;
import com.xd.core.business.entity.UsePrint;
import com.xd.core.business.vo.UsePrintPageVo;
import com.xd.core.business.vo.UsePrintVo;

/**
 * <p>
 * 用印表 服务类
 * </p>
 *
 * @author zch
 * @since 2025-06-23
 */
public interface IUsePrintService extends IService<UsePrint> {

    /***
     * @description 用印申请列表分页查询
     * @author Zch
     * @date 18:17 2025/6/23 星期一
     * @return com.github.pagehelper.Page<com.xd.core.business.vo.UsePrintPageVo>
     **/
    Page<UsePrintPageVo> usePrintList(UsePrintQueryDto dto);

    /***
     * @description 查看用印
     * @author Zch
     * @date 19:55 2025/6/23 星期一
     * @return com.xd.core.business.vo.UsePrintVo
     **/
    UsePrintVo getUsePrint(Integer usePrintId,String uid,String typeOfSealUsed);

    /***
     * @description 用印审批
     * @author Zch
     * @date 11:25 2025/6/24 星期二
     * @return void
     **/
    void checkUsePrint(CheckUsePrintDto dto);

    /***
     * @description 用印加急
     * @author Zch
     * @date 11:51 2025/6/24 星期二
     * @return void
     **/
    void usePrintUrgent(UsePrintUrgentDto dto);

    /***
     * @description 用印申请
     * @author Zch
     * @date 10:44 2025/7/1 星期二
     * @return void
     **/
    Integer addPrintUrgent(AddPrintUrgentDto dto);

    /***
     * @description 修改重新申请用印状态
     * @author Zch
     * @date 17:14 2025/7/3 星期四
     * @return void
     **/
    void updateRepeat(UpdateRepeatDto dto);
}
